﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WebAPITest.Controllers
{
    /// <summary>
    /// zy-新增-接口违法数据
    /// </summary>
    public class IllegalDataModel
    {
        /// <summary>
        /// 卡口编号
        /// </summary>
        public string kkbh { get; set; }
        public string kkbh2 { get; set; }
        /// <summary>
        /// 相机编号
        /// </summary>
        public string xjbh { get; set; }
        /// <summary>
        /// 集指平台设备编号
        /// </summary>
        public string hxbbh { get; set; }
        /// <summary>
        /// 入库时间（接口接收时间）
        /// </summary>
        public string rksj { get; set; }
        /// <summary>
        /// 处理完成时间
        /// </summary>
        public string tssj { get; set; }
        /// <summary>
        /// 违法时间（yyyy-mm-dd hh:mm:ss）
        /// </summary>
        public string wfsj { get; set; }
        /// <summary>
        /// 违法持续时间
        /// </summary>
        public string cxsj { get; set; }
        /// <summary>
        /// 违法类型
        /// </summary>
        public string wflx { get; set; }
        /// <summary>
        /// 违法代码
        /// </summary>
        public string wfdm { get; set; }
        /// <summary>
        /// 违法地址
        /// </summary>
        public string wfdz { get; set; }
        /// <summary>
        /// 车牌号码
        /// </summary>
        public string hphm { get; set; }
        /// <summary>
        /// 车辆类型
        /// </summary>
        public string cllx { get; set; }
        /// <summary>
        /// 车辆品牌
        /// </summary>
        public string clpp { get; set; }
        /// <summary>
        /// 车辆子品牌
        /// </summary>
        public string clzpp { get; set; }
        /// <summary>
        /// 车牌种类
        /// </summary>
        public string hpzl { get; set; }
        /// <summary>
        /// 车牌颜色
        /// </summary>
        public string hpys { get; set; }
        /// <summary>
        /// 车身颜色
        /// </summary>
        public string csys { get; set; }
        /// <summary>
        /// 设备(检测器)编号
        /// </summary>
        public string sbbh { get; set; }
        /// <summary>
        /// 车道号
        /// </summary>
        public string cdh { get; set; }
        /// <summary>
        /// 上传方式
        /// </summary>
        public string scfs { get; set; }
        /// <summary>
        /// 方向编号
        /// </summary>
        public string fxbh { get; set; }
        /// <summary>
        /// 监测方向
        /// </summary>
        public string jcfx { get; set; }
        /// <summary>
        /// 方向类型
        /// </summary>
        public string fxlx { get; set; }
        /// <summary>
        /// 行驶方向
        /// </summary>
        public string xsfx { get; set; }
        /// <summary>
        /// 行驶速度
        /// </summary>
        public string wxpcjc { get; set; }
        /// <summary>
        /// 限速值
        /// </summary>
        public string clxs { get; set; }
        /// <summary>
        /// 超速比
        /// </summary>
        public string clsd { get; set; }
        /// <summary>
        /// 图片数量
        /// </summary>
        public string tpsl { get; set; }
        /// <summary>
        /// 全景图片(base64)
        /// </summary>
        public string qjtplj { get; set; }
        /// <summary>
        /// 特征图片(base64)
        /// </summary>
        public string tztplj { get; set; }
        /// <summary>
        /// 主副驾驶人图片
        /// </summary>
        public string zfjsrtp { get; set; }
        /// <summary>
        /// 辅助图片1（违法图片/三合一）
        /// </summary>
        public string fztp1lj { get; set; }
        /// <summary>
        /// 辅助图片2
        /// </summary>
        public string fztp2lj { get; set; }
        /// <summary>
        /// 文件路径
        /// </summary>
        public string wjlj { get; set; }
        /// <summary>
        /// 违法短视频路径
        /// </summary>
        public string dsplj { get; set; }
        /// <summary>
        /// XML数据文件路径
        /// </summary>
        public string xmllj { get; set; }
        /// <summary>
        /// 设备(检测器)经度
        /// </summary>
        public string sbjd { get; set; }
        /// <summary>
        /// 设备(检测器)纬度
        /// </summary>
        public string sbwd { get; set; }
        /// <summary>
        /// 提醒标记 ，枚举值(1 提醒，2 违法数据)
        /// </summary>
        public string flag { get; set; }
        /// <summary>
        /// 上传序号
        /// </summary>
        public string scxh { get; set; }
        /// <summary>
        /// 数据来源(hk 海康, cxy 车小丫, ygd 远光灯, wk 文康)
        /// </summary>
        public string source { get; set; }
        /// <summary>
        /// 数据类型 tieqi illegaldata
        /// </summary>
        public string dataType { get; set; }
        /// <summary>
        /// 备用字段1
        /// </summary>
        public string bak1 { get; set; }
        /// <summary>
        /// 备用字段2
        /// </summary>
        public string bak2 { get; set; }
        /// <summary>
        /// 备用字段3
        /// </summary>
        public string bak3 { get; set; }
        /// <summary>
        /// 备用字段4
        /// </summary>
        public string bak4 { get; set; }
        /// <summary>
        /// 备用字段5
        /// </summary>
        public string bak5 { get; set; }
        /// <summary>
        /// 备用字段6
        /// </summary>
        public string bak6 { get; set; }
        /// <summary>
        /// 备用字段7
        /// </summary>
        public string bak7 { get; set; }
        /// <summary>
        /// 备用字段8
        /// </summary>
        public string bak8 { get; set; }
    }

    public class IllegalDataModel1
    {
        public String deviceNo { get; set; }
        public List<ChildModel> forensics { get; set; }

        public class ChildModel
        {
            public String createdAt { get; set; }
            public String deviceNo { get; set; }
            public String plateNbr { get; set; }
            public String plateType { get; set; }
            public String platePic { get; set; }
            public String captureTime { get; set; }
            public String eventType { get; set; }
            public String roadName { get; set; }
            public String voImage { get; set; }
            public String ViolationCode { get; set; }
            public String plateColor { get; set; }
            public int IllegalIndex { get; set; }//0发送短信；1推送违法 【2025-01-16 add by zy】
            public int StrictRoad { get; set; }// 1非严管； 2 严管 【2025-01-16 add by zy】
        }
    }
    /// <summary>
    /// zy-新增-Http请求接口违法数据接口返回数据Model
    /// </summary>
    public class ReturnDataModel
    {
        public string code { get; set; }
        public string message { get; set; }
    }

    /// <summary>
    /// 阿拉善违法数据Model
    /// </summary>
    public class AlxaillegalModel
    {
        /// <summary>
        /// 卡口ID-非必须
        /// </summary>
        public string tollgate_id { get; set; }
        /// <summary>
        /// 设备ID-必须
        /// </summary>
        public string device_id { get; set; }
        /// <summary>
        /// 设备通道ID-必须
        /// </summary>
        public string channel_id { get; set; }
        /// <summary>
        /// 车道号,车辆行驶方向最左道为 1，由左向右顺序编号-非必须
        /// </summary>
        public string lane_no { get; set; }
        /// <summary>
        /// 告警类型 5超速-必须
        /// </summary>
        public string alarm_type { get; set; }
        /// <summary>
        /// 告警状态：1持续中，0结束-必须
        /// </summary>
        public string alarm_status { get; set; }
        /// <summary>
        /// 告警时间，毫秒时间戳-必须
        /// </summary>
        public long alarm_time { get; set; }
        /// <summary>
        /// 车牌号-非必须
        /// </summary>
        public string plate_no { get; set; }
        /// <summary>
        /// 车牌颜色，参考A.3中指定颜色：1~12,99 黑色，白色，黄色，蓝色，绿色-非必须
        /// </summary>
        public string plate_color { get; set; }
        /// <summary>
        /// 车牌种类：1~32,99-非必须
        /// </summary>
        public string plate_class { get; set; }
        /// <summary>
        /// 车辆类型-非必须
        /// </summary>
        public string vehicle_type { get; set; }
        /// <summary>
        /// 车辆品牌-非必须
        /// </summary>
        public string vehicle_brand { get; set; }
        /// <summary>
        /// 车身颜色-非必须
        /// </summary>
        public string vehicle_color { get; set; }
        /// <summary>
        /// 车速km/h-非必须
        /// </summary>
        public string speed { get; set; }
        /// <summary>
        /// 抓拍组id-非必须
        /// </summary>
        public string group_id { get; set; }
        /// <summary>
        /// 图片列表-非必须
        /// </summary>
        public List<ImageModel> images { get; set; }
        /// <summary>
        /// 扩展信息，传输json字符串；"{\"alarm_code\":,1601,  \"vehicle_direction\":2}" alarm_code为国标违法代码-非必须
        /// </summary>
        public string ext_info { get; set; }
    }
    /// <summary>
    /// 图片Model
    /// </summary>
    public class ImageModel
    {
        /// <summary>
        /// 图片类型：01,02,03,04,05,06,07,08,09,10,11,12,13,14,100-必须
        /// </summary>
        public string image_type { get; set; }
        /// <summary>
        /// 图片格式：Bmp,Gif,Jpeg,Jfif,Kdc,Pcd,Pcx,Pic,Pix,Png,Psd,Tapga,Tiff,Wmf,Jp2,Other,O-必须
        /// </summary>
        public string image_format { get; set; }
        /// <summary>
        /// 图片Base64编码数据-非必须
        /// </summary>
        public string image_data { get; set; }
    }

    /// <summary>
    /// 阿拉善响应参数
    /// </summary>
    public class AlxaReturnDataModel
    {
        /// <summary>
        /// 错误码-必须
        /// </summary>
        public string error_code { get; set; }
        /// <summary>
        /// 错误信息-必须
        /// </summary>
        public string message { get; set; }
        /// <summary>
        /// 数据-非必须
        /// </summary>
        public string data { get; set; }
    }
}